I. Field of Invention
This invention relates to telecommunications systems. Specifically, the present invention relates to systems and methods for selectively blocking calls to alleviate or prevent overload conditions in telecommunications networks.
II. Description of the Related Art
Telecommunications networks are employed in a variety of demanding applications including Internet, faxing, wireless communications, and other applications. As demand for such applications increases, telecommunications networks must adjust to increased traffic by implementing systems and methods to account for the additional traffic and to prevent network overload.
Wireless telecommunications networks are particularly vulnerable to network overload. A wireless network becomes overloaded when the number of calls routed through the network becomes sufficiently large to significantly degrade the performance of the network. The exact parameters for determining when a network is overloaded vary from system to system.
Wireless telecommunications systems are often characterized by a plurality of mobile stations (e.g. wireless telephones, mobile units, wireless telephones, or mobile phones) in communication with one or more base station transceiver subsystems (BTSs) or gateway radio frequency systems (GRSs). Signals transmitted by the mobile stations are received by a BTS and often relay to a mobile switching center (MSC) or gateway switching system (GSS). The MSC or GSS, in turn, routes the signal to a public switched telephone network (PSTN) or to another mobile station. Similarly, a signal may be transmitted from the PSTN to a mobile station via a base station and/or BTS and an MSC.
Systems for blocking calls routed from the PSTN to the wireless network are often employed to prevent or alleviate network overload conditions. For example, in one call-blocking system, when the network becomes overloaded, all outgoing calls are withheld for a certain time interval. Unfortunately, existing call-blocking systems typically do not precisely block a certain percentage of calls over a given number of calls, and do not automatically evenly block incoming calls over a given number of incoming calls. For example, if a system must evenly block 23% of the next 1000 incoming calls to effectively alleviate a network overload condition, existing systems will not precisely block 23% of the next 1000 incoming calls, and furthermore, will not evenly distribute the blocked calls over the 1000 incoming calls. Uneven call-blocking distributions may result in undesirable network load inefficiencies and call-blocking inaccuracies, as to many or too few calls may be blocked at inappropriate times.
Hence, a need exists in the art for a system and method for accurately and selectively blocking a predetermined percentage of calls in a telecommunications network. There exists a further need for a call blocking system that accurately determines percentage of calls to block over a given number of calls and evenly distributes the blocked calls even when the call blocking percentage changes.
The need in the art is addressed by the system for selectively blocking or dropping calls in a telecommunications network of the present invention. In the illustrative embodiment, the inventive system is adapted for use with a wireless telecommunications network. The system includes a first mechanism for monitoring network usage and providing a gauging signal in response thereto when the network usage exceeds a predetermined threshold. A second mechanism determines a percentage of calls to block by the network in response to the gauging signal. The percentage of calls to block corresponds to a desired number of blocked calls out of a certain number of calls. A third mechanism automatically blocks the percentage of calls out of the certain number of calls.
In a specific embodiment, the third mechanism includes a mechanism for accounting for a remainder resulting from a division of the certain number of calls by the desired number of calls. An additional mechanism accounts for values of the desired number of blocked calls that do not evenly divide into the certain number of calls. The mechanism for accounting further includes a mechanism for dividing the certain number of calls by the desired number of calls and providing a number of calls to skip and a remainder in response thereto. The number of calls to skip is equivalent to one less than the quotient resulting from the division of the certain number of calls by the desired number of calls to be blocked.
In a more specific embodiment, the mechanism for accounting also includes mechanism for blocking a subsequent call after skipping the number of calls to skip. Another mechanism employs the remainder to adjust the number of calls to skip so that over the certain number of calls, the number of blocked calls are blocked by the mechanism for blocking.
In the illustrative embodiment, the second mechanism includes a controller running on a gateway switching system. The third mechanism further includes a mechanism for determining a throttle rate based on the percentage of calls to block. An initializing mechanism initializes an initial fraction rate to the remainder of the certain number of calls divided by the throttle rate and initializes a fraction rate to zero. The initializing mechanism also initializes a skip count to one or, if previously initialized, to a previous value of Skip Count plus the difference between the throttle rate and a previous value for the throttle rate.
The third mechanism further includes a processing mechanism that processes incoming calls to determine calls to block by the third mechanism. The processing mechanism selectively decrements the skip count each time a call is processed and increments the fraction rate by the initial fraction rate. The processing mechanism also re-initializes the skip count to the throttle rate plus one and sets the fraction rate equal to the fraction rate minus the desired number of blocked calls each time the fraction rate becomes larger than the desired number of calls to be blocked. The processing mechanism initiates blocking of an incoming call each time the skip count becomes less than or equal to zero.
The novel design of the present invention is facilitated by the third mechanism, which automatically blocks a specific percentage of calls out of a given number of calls, thereby preventing or alleviating a network overload condition. The efficiency of the present invention is enhanced by the fact that the third mechanism evenly distributes dropped calls over a given number of calls while simultaneously accounting for changes in values of the percentage of calls to block.